home *** CD-ROM | disk | FTP | other *** search
/ Inter.Net 55-1 / Inter.Net 55-1.iso / CBuilder / Setup / BCB / data.z / main.cpp < prev    next >
Encoding:
C/C++ Source or Header  |  1998-02-09  |  4.7 KB  |  136 lines

  1. //---------------------------------------------------------------------
  2. #include <vcl.h>
  3. #pragma hdrstop
  4.  
  5. #include "Main.h"
  6. #include "About.h"
  7. //--------------------------------------------------------------------- 
  8. #pragma resource "*.dfm"
  9. TMainForm *MainForm;
  10. //--------------------------------------------------------------------- 
  11. __fastcall TMainForm::TMainForm(TComponent *Owner)
  12.     : TForm(Owner)
  13. {
  14. }
  15. //--------------------------------------------------------------------- 
  16. void __fastcall TMainForm::FormCreate(TObject *Sender)
  17. {
  18.     Application->OnHint = ShowHint;
  19.     Screen->OnActiveFormChange = UpdateMenuItems;
  20. }
  21. //--------------------------------------------------------------------- 
  22. void __fastcall TMainForm::ShowHint(TObject *Sender)
  23. {
  24.     StatusBar->SimpleText = Application->Hint;
  25. }
  26. //--------------------------------------------------------------------- 
  27. void __fastcall TMainForm::CreateMDIChild(String Name)
  28. {
  29.     TMDIChild *Child;
  30.  
  31.     //--- create a new MDI child window ----
  32.     Child = new TMDIChild(Application);
  33.     Child->Caption = Name;
  34. }
  35. //--------------------------------------------------------------------- 
  36. void __fastcall TMainForm::FileNewItemClick(TObject *Sender)
  37. {
  38.     CreateMDIChild("NONAME" + IntToStr(MDIChildCount + 1));
  39. }
  40. //--------------------------------------------------------------------- 
  41. void __fastcall TMainForm::FileOpenItemClick(TObject *Sender)
  42. {
  43.     if (OpenDialog->Execute())
  44.         CreateMDIChild(OpenDialog->FileName);
  45. }
  46. //--------------------------------------------------------------------- 
  47. void __fastcall TMainForm::FileCloseItemClick(TObject *Sender)
  48. {
  49.     if (ActiveMDIChild)
  50.         ActiveMDIChild->Close();
  51. }
  52. //--------------------------------------------------------------------- 
  53. void __fastcall TMainForm::FileSaveItemClick(TObject *Sender)
  54. {
  55.     //---- save current file (ActiveMDIChild points to the window) ----
  56. }
  57. //--------------------------------------------------------------------- 
  58. void __fastcall TMainForm::FileSaveAsItemClick(TObject *Sender)
  59. {
  60.     //---- save current file under new name ----
  61. }
  62. //--------------------------------------------------------------------- 
  63. void __fastcall TMainForm::FileExitItemClick(TObject *Sender)
  64. {
  65.     Close();
  66. }
  67. //--------------------------------------------------------------------- 
  68. void __fastcall TMainForm::CutItemClick(TObject *Sender)
  69. {
  70.     //---- cut selection to clipboard ----
  71. }
  72. //--------------------------------------------------------------------- 
  73. void __fastcall TMainForm::CopyItemClick(TObject *Sender)
  74. {
  75.     //---- copy selection to clipboard ----
  76. }
  77. //--------------------------------------------------------------------- 
  78. void __fastcall TMainForm::PasteItemClick(TObject *Sender)
  79. {
  80.     //---- paste from clipboard ----
  81. }
  82. //--------------------------------------------------------------------- 
  83. void __fastcall TMainForm::WindowCascadeItemClick(TObject *Sender)
  84. {
  85.     Cascade();
  86. }
  87. //--------------------------------------------------------------------- 
  88. void __fastcall TMainForm::WindowTileItemClick(TObject *Sender)
  89. {
  90.     Tile();
  91. }
  92. //--------------------------------------------------------------------- 
  93. void __fastcall TMainForm::WindowArrangeItemClick(TObject *Sender)
  94. {
  95.     ArrangeIcons();
  96. }
  97. //--------------------------------------------------------------------- 
  98. void __fastcall TMainForm::WindowMinimizeItemClick(TObject *Sender)
  99. {
  100.     int i;
  101.  
  102.     //---- Must be done backwards through the MDIChildren array ----
  103.     for (i=MDIChildCount-1; i >= 0; i--)
  104.         MDIChildren[i]->WindowState = wsMinimized;
  105. }
  106. //--------------------------------------------------------------------- 
  107. void __fastcall TMainForm::UpdateMenuItems(TObject *Sender)
  108. {
  109.     FileCloseItem->Enabled = MDIChildCount > 0;
  110.     FileSaveItem->Enabled = MDIChildCount > 0;
  111.     FileSaveAsItem->Enabled = MDIChildCount > 0;
  112.     CutItem->Enabled = MDIChildCount > 0;
  113.     CopyItem->Enabled = MDIChildCount > 0;
  114.     PasteItem->Enabled = MDIChildCount > 0;
  115.     SaveBtn->Enabled = MDIChildCount > 0;
  116.     CutBtn->Enabled = MDIChildCount > 0;
  117.     CopyBtn->Enabled = MDIChildCount > 0;
  118.     PasteBtn->Enabled = MDIChildCount > 0;
  119.     WindowCascadeItem->Enabled = MDIChildCount > 0;
  120.     WindowTileItem->Enabled = MDIChildCount > 0;
  121.     WindowArrangeItem->Enabled = MDIChildCount > 0;
  122.     WindowMinimizeItem->Enabled = MDIChildCount > 0;
  123. }
  124. //---------------------------------------------------------------------
  125. void __fastcall TMainForm::FormDestroy(TObject *Sender)
  126. {
  127.     Screen->OnActiveFormChange = NULL;
  128. }
  129. //---------------------------------------------------------------------------
  130. void __fastcall TMainForm::HelpAboutItemClick(TObject *Sender)
  131. {
  132.     AboutBox->ShowModal();
  133. }
  134. //---------------------------------------------------------------------------
  135.  
  136.